Skip to content

feat(smart-rma): add local redaction - #13

Merged
margrop merged 1 commit into
mainfrom
agent/p3-003-smart-redaction
Jul 25, 2026
Merged

margrop merged 1 commit into
mainfrom
agent/p3-003-smart-redaction

Conversation

@margrop

@margrop margrop commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • complete P3-003 with browser-only redaction for serial numbers, WWNs, host names, domains, IPv4/IPv6, email, and common Secret labels
  • cover smartctl variants such as Device Serial No., SerialNumber, LU WWN Device Id, and host names containing underscores
  • add the versioned smart-rma-boundary-projection-v1 allowlist for future AI and export consumers
  • keep URL, log, and Analytics projections limited to stable metadata
  • add an inspectable local redaction preview and count-only privacy report to /smart-rma/
  • update the Lab contract, docs, static production checks, and TODO; recommend P3-004 next

Privacy and cost

  • raw input remains in current-page memory only
  • changing the input clears stale parse and redaction results
  • raw or redacted text never enters URL, logs, Analytics, AI requests, or export payloads
  • AI/export projections contain only enums, numbers, known ATA IDs, stable signals, and redaction counts
  • unknown vendor attribute names and values are omitted from the cross-boundary projection
  • no network, storage, logging, Analytics receiver, AI call, or runtime AI cost is added

Validation

  • npm run validate
  • Astro/TypeScript: 0 errors, warnings, or hints
  • Vitest: 20 files and 229 tests passed
  • static build: 5 pages, including /smart-rma/
  • all static output contracts passed
  • remote Git tree matches local HEAD exactly

Deliberate limits

  • pattern matching cannot prove that every unlabelled random identifier is safe; the no-raw-text boundary and explicit allowlist remain the primary protection
  • P3-004 still owns deterministic health classification
  • P3-005/P3-006 still own AI explanation and user-triggered exports
  • this task does not make a vendor warranty/RMA decision

Next

Implement P3-004 as a separate PR with evidence-linked healthy/warning/critical/unknown rules, explicit conflict handling, and no AI dependency.

@margrop
margrop marked this pull request as ready for review July 25, 2026 13:52
@margrop
margrop merged commit 8b20338 into main Jul 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant